package com.ourteam.workspace.dao;

import net.dao.IDataAccessInterface;

/**
 * Template Name : DAO接口模板 Template Version : 1 Template Last Modfiy Date : Thu Sep 21 11:14:14 CST
 * 2017 Auto Generate Date : 2018-11-30 18:42:25 Warning ! This file will be overwrite when
 * regenerate !
 */
public interface IBaseWorkspaceProductDatabaseRelateDAO
    extends IDataAccessInterface<
        WorkspaceProductDatabaseRelate, WorkspaceProductDatabaseRelateDAOQueryBean> {

  /** Mapped Entity Name */
  static final String EntityName = "WORKSPACE_PRODUCT_DATABASE_RELATE";

  /** Mapped Field ID */
  static final String Id = "WORKSPACE_PRODUCT_DATABASE_RELATE.ID";

  /** Mapped Field WORKSPACE_ID */
  static final String WorkspaceId = "WORKSPACE_PRODUCT_DATABASE_RELATE.WORKSPACE_ID";

  /** Mapped Field PRODUCT_DATABASE_ID */
  static final String ProductDatabaseId = "WORKSPACE_PRODUCT_DATABASE_RELATE.PRODUCT_DATABASE_ID";

  /** Mapped Field RELATE_NAME */
  static final String RelateName = "WORKSPACE_PRODUCT_DATABASE_RELATE.RELATE_NAME";

  /** Mapped Field STATUS */
  static final String Status = "WORKSPACE_PRODUCT_DATABASE_RELATE.STATUS";

  /** Mapped Field REMARKS */
  static final String Remarks = "WORKSPACE_PRODUCT_DATABASE_RELATE.REMARKS";

  /** Mapped Attribute databaseName */
  static final String DatabaseName =
      org.apache.commons.lang.StringUtils.replace(
          com.ourteam.product.model.dao.IProductDatabaseDAO.DatabaseName,
          com.ourteam.product.model.dao.IProductDatabaseDAO.EntityName + ".",
          "RELATED_55VHSO_ProductDatabase.");

  /** Mapped Attribute databaseType */
  static final String DatabaseType =
      org.apache.commons.lang.StringUtils.replace(
          com.ourteam.product.model.dao.IProductDatabaseDAO.DatabaseType,
          com.ourteam.product.model.dao.IProductDatabaseDAO.EntityName + ".",
          "RELATED_55VHSO_ProductDatabase.");

  /** Mapped Attribute databaseIp */
  static final String DatabaseIp =
      org.apache.commons.lang.StringUtils.replace(
          com.ourteam.product.model.dao.IProductDatabaseDAO.DatabaseIp,
          com.ourteam.product.model.dao.IProductDatabaseDAO.EntityName + ".",
          "RELATED_55VHSO_ProductDatabase.");

  /** Mapped Attribute databasePort */
  static final String DatabasePort =
      org.apache.commons.lang.StringUtils.replace(
          com.ourteam.product.model.dao.IProductDatabaseDAO.DatabasePort,
          com.ourteam.product.model.dao.IProductDatabaseDAO.EntityName + ".",
          "RELATED_55VHSO_ProductDatabase.");

  /** Mapped Attribute databaseServiceId */
  static final String DatabaseServiceId =
      org.apache.commons.lang.StringUtils.replace(
          com.ourteam.product.model.dao.IProductDatabaseDAO.DatabaseServiceId,
          com.ourteam.product.model.dao.IProductDatabaseDAO.EntityName + ".",
          "RELATED_55VHSO_ProductDatabase.");

  public static interface DataProperty {

    /** Attribute id */
    static final String Id = "id";

    /** Attribute workspaceId */
    static final String WorkspaceId = "workspaceId";

    /** Attribute productDatabaseId */
    static final String ProductDatabaseId = "productDatabaseId";

    /** Attribute relateName */
    static final String RelateName = "relateName";

    /** Attribute status */
    static final String Status = "status";

    /** Attribute remarks */
    static final String Remarks = "remarks";

    /** Attribute databaseName */
    static final String DatabaseName = "databaseName";

    /** Attribute databaseType */
    static final String DatabaseType = "databaseType";

    /** Attribute databaseIp */
    static final String DatabaseIp = "databaseIp";

    /** Attribute databasePort */
    static final String DatabasePort = "databasePort";

    /** Attribute databaseServiceId */
    static final String DatabaseServiceId = "databaseServiceId";
  }

  public static interface _DataObjectProperty extends DataProperty {}

  /**
   * Delete Data
   *
   * @param final long id
   * @throws Exception
   */
  void delete(final long id) throws Exception;
  /**
   * Find Data By Primary Key
   *
   * @param final long id
   * @throws Exception
   */
  WorkspaceProductDatabaseRelate findById(final long id) throws Exception;

  /**
   * Query Related WorkspaceProductDatabaseModelRelate
   *
   * @param aQueryBean
   * @throws Exception
   */
  com.ourteam.workspace.dao.WorkspaceProductDatabaseModelRelate[]
      queryWorkspaceProductDatabaseModelRelate(
          final WorkspaceProductDatabaseRelateDAOQueryBean queryBean) throws Exception;

  /**
   * Query Related WorkspaceProductDatabaseModelRelate Selective
   *
   * @param queryBean
   * @throws Exception
   */
  java.util.Map<String, Object>[] queryWorkspaceProductDatabaseModelRelateSelective(
      final WorkspaceProductDatabaseRelateDAOQueryBean queryBean) throws Exception;

  /**
   * Update Related WorkspaceProductDatabaseModelRelate
   *
   * @param aWorkspaceProductDatabaseModelRelate
   * @param queryBean
   * @throws Exception
   */
  void updateWorkspaceProductDatabaseModelRelate(
      final com.ourteam.workspace.dao.WorkspaceProductDatabaseModelRelate
          aWorkspaceProductDatabaseModelRelate,
      WorkspaceProductDatabaseRelateDAOQueryBean queryBean)
      throws Exception;

  /**
   * Delete Related WorkspaceProductDatabaseModelRelate
   *
   * @param queryBean
   * @throws Exception
   */
  void deleteWorkspaceProductDatabaseModelRelate(
      final WorkspaceProductDatabaseRelateDAOQueryBean queryBean) throws Exception;
}
